Methods and apparatus to estimate population reach from different marginal ratings and/or unions of marginal ratings based on impression data

ABSTRACT

Example methods, apparatus, and articles of manufacture are disclosed to estimate population reach. An example apparatus includes processor circuitry to determine first multipliers corresponding to a panelist impression count and panelist audience size totals of at least one of a first margin of media, a second margin of the media, or a union of the first margin and the second margin, the first margin, the second margin, and the union included in a tree association; concurrently determine second multipliers using the tree association and the first multipliers; determine third multipliers corresponding to a total audience size exposed to the media at at least one of the first margin, the second margin, or the union based on the tree association using database proprietor impression totals; and determine, based on the third multipliers, an estimate for the population reach of the media for at least one of the first margin, the second margin, or the union.

RELATED APPLICATION

This patent arises from a continuation of U.S. patent application Ser.No. 16/355,386, (now U.S. Pat. No. 11,216,834) which was filed on Mar.15, 2019. U.S. patent application Ser. No. 16/355,386 is herebyincorporated herein by reference in its entirety. Priority to U.S.patent application Ser. No. 16/355,386 is hereby claimed.

FIELD OF THE DISCLOSURE

This disclosure relates generally to media audience measurement, and,more particularly, to methods and apparatus to estimate population reachfrom different marginal rating unions.

BACKGROUND

Traditionally, audience measurement entities have measured audienceengagement levels for media based on registered panel members. That is,an audience measurement entity (AME) enrolls people who consent to beingmonitored into a panel. The AME then monitors those panel members todetermine media (e.g., television programs, radio programs, movies,DVDs, advertisements, streaming media, websites, etc.) presented tothose panel members. In this manner, the AME can determine exposuremetrics for different media based on the collected media measurementdata.

Techniques for monitoring user access to Internet resources, such aswebpages, advertisements and/or other Internet-accessible media, haveevolved significantly over the years. Internet-accessible media is alsoknown as online media. Some known systems perform such monitoringprimarily through server logs. In particular, entities serving media onthe Internet can use known techniques to log the number of requestsreceived at their servers for media.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates example client devices that report audienceimpression requests for Internet-based media to impression collectionentities to facilitate estimating sizes of audiences exposed todifferent Internet-based media and/or different unions of Internet-basedmedia.

FIGS. 2A-2C illustrate example panelist data and database proprietor anddata corresponding tree structures to represent such data.

FIG. 3 is a block diagram of an example implementation of the exampleaudience population determiner of FIG. 1 .

FIGS. 4-7 are flowcharts illustrating example machine readableinstructions that may be executed to implement the example audiencepopulation determiner of FIGS. 1 and/or 3 .

FIG. 8 is a block diagram of an example processing system structured toexecute the example machine readable instructions of FIGS. 4-7 toimplement the example audience population determiner of FIGS. 1 and/or 3.

In general, the same reference numbers will be used throughout thedrawing(s) and accompanying written description to refer to the same orlike parts.

Descriptors “first,” “second,” “third,” etc. are used herein whenidentifying multiple elements or components which may be referred toseparately. Unless otherwise specified or understood based on theircontext of use, such descriptors are not intended to impute any meaningof priority, physical order or arrangement in a list, or ordering intime but are merely used as labels for referring to multiple elements orcomponents separately for ease of understanding the disclosed examples.In some examples, the descriptor “first” may be used to refer to anelement in the detailed description, while the same element may bereferred to in a claim with a different descriptor such as “second” or“third.” In such instances, it should be understood that suchdescriptors are used merely for ease of referencing multiple elements orcomponents

DETAILED DESCRIPTION

Techniques for monitoring user access to Internet-accessible media, suchas websites, advertisements, content and/or other media, have evolvedsignificantly over the years. Internet-accessible media is also known asonline media. In the past, such monitoring was done primarily throughserver logs. In particular, entities serving media on the Internet wouldlog the number of requests received for their media at their servers.Basing Internet usage research on server logs is problematic for severalreasons. For example, server logs can be tampered with either directlyor via zombie programs, which repeatedly request media from the serverto increase the server log counts. Also, media is sometimes retrievedonce, cached locally and then repeatedly accessed from the local cachewithout involving the server. Server logs cannot track such repeat viewsof cached media. Thus, server logs are susceptible to both over-countingand under-counting errors.

The inventions disclosed in Blumenau, U.S. Pat. No. 6,108,637, which ishereby incorporated herein by reference in its entirety, fundamentallychanged the way Internet monitoring is performed and overcame thelimitations of the server side log monitoring techniques describedabove. For example, Blumenau disclosed a technique wherein Internetmedia to be tracked is tagged with monitoring instructions. Inparticular, monitoring instructions are associated with (e.g., locatedin) the hypertext markup language (HTML) of the media to be tracked.When a client requests the media, both the media and the monitoringinstructions are downloaded to the client. The monitoring instructionsare, thus, executed at a client device (e.g., by a web browser) wheneverthe media is accessed, be it accessed from a server or from a cache.

Monitoring instructions (also referred to herein as beacon instructions)cause monitoring data reflecting information about an access to themedia to be sent from the client that downloaded the media to amonitoring entity. Sending the monitoring data from the client to themonitoring entity is known as an impression request (also referred to asa beacon request). Typically, the monitoring entity is an AME that didnot provide the media to the client and who is a trusted (e.g., neutral)third party for providing accurate usage statistics (e.g., The NielsenCompany, LLC). Advantageously, because the impression requests areassociated with the media and executed by the client browser wheneverthe media is accessed, the monitoring information is provided to the AME(e.g., via an impression request) irrespective of whether the clientcorresponds to a panelist of the AME.

There are many database proprietors operating on the Internet. Thesedatabase proprietors provide services to large numbers of subscribers.In exchange for the provision of services, the subscribers register withthe database proprietors. Examples of such database proprietors includesocial network sites (e.g., Facebook, Twitter, MySpace, etc.),multi-service sites (e.g., Yahoo!, Google, Axiom, Catalina, etc.),online retailer sites (e.g., Amazon.com, Buy.com, etc.), creditreporting sites (e.g., Experian), streaming media sites (e.g., YouTube,etc.), etc. These database proprietors set cookies and/or otherdevice/user identifiers on the client devices of their subscribers toenable the database proprietor to recognize their subscribers when theyvisit their websites.

The protocols of the Internet make cookies inaccessible outside of thedomain (e.g., Internet domain, domain name, etc.) on which they wereset. Thus, a cookie set in, for example, the amazon.com domain isaccessible to servers in the amazon.com domain, but not to serversoutside that domain. Therefore, although an AME might find itadvantageous to access the cookies set by the database proprietors, theyare unable to do so.

The inventions disclosed in Mainak et al., U.S. Pat. No. 8,370,489,which is incorporated by reference herein in its entirety, enable an AMEto leverage the existing databases of database proprietors to collectmore extensive Internet usage by extending the impression requestprocess to encompass partnered database proprietors and by using suchpartners as interim data collectors. The inventions disclosed in Mainaket al. accomplish this task by structuring the AME to respond toimpression requests from clients (who may not be a member of an audiencemember panel and, thus, may be unknown to the audience member entity) byredirecting the clients from the AME to a database proprietor, such as asocial network site partnered with the audience member entity, using animpression response. Such a redirection initiates a communicationsession between the client accessing the tagged media and the databaseproprietor. For example, the impression response received from the AMEmay cause the client to send a second impression request to the databaseproprietor. In response to receiving this impression request, thedatabase proprietor (e.g., Facebook) can access any cookie it has set onthe client to thereby identify the client based on the internal recordsof the database proprietor. In the event the client corresponds to asubscriber of the database proprietor, the database proprietorlogs/records a database proprietor impression in association with theclient/user and subsequently forwards logged database proprietorimpressions to the AME.

As used herein, an impression is defined to be an event in which a homeor individual accesses and/or is exposed to media (e.g., anadvertisement, content, an advertisement campaign, a group ofadvertisements and/or a collection of content). In Internet advertising,a quantity of impressions or impression count is the total number oftimes media has been accessed by a web population (e.g., the number oftimes the media is accessed). In some examples, an impression or mediaimpression is logged by an impression collection entity (e.g., an AME ora database proprietor) in response to a beacon request from auser/client device that requested the media. In some examples, a mediaimpression is associated with demographics of an audience member towhich the impression is attributed. As used herein, a demographicimpression is a media impression logged or stored in association withcorresponding demographics. A panelist impression is a media impressionlogged an AME from an panelist of the AME corresponding to a householdand/or audience member exposed to media. As used herein, a databaseproprietor impression is an impression recorded by a database proprietorin response to a beacon request from a client device of a registeredsubscriber of the database proprietor.

In the event the client does not correspond to a subscriber of thedatabase proprietor, the database proprietor may redirect the client tothe AME and/or another database proprietor. If the client is redirectedto the AME, the AME may respond to the redirection from the firstdatabase proprietor by redirecting the client to a second, differentdatabase proprietor that is partnered with the AME. That second databaseproprietor may then attempt to identify the client as explained above.This process of redirecting the client from database proprietor todatabase proprietor can be performed any number of times until theclient is identified and the media exposure logged, or until alldatabase partners have been contacted without a successfulidentification of the client. In some examples, the redirections occurautomatically so the user of the client is not involved in the variouscommunication sessions and may not even know they are occurring.

Periodically or aperiodically, the partnered database proprietorsprovide their logs and/or demographic information to the AME, which thencompiles the collected data into statistical reports identifyingaudience members for the media.

In some disclosed examples, an AME sends a list of logged impressionsfor particular online media to one or more database proprietor(s). Thedatabase proprietor(s) respond with a number of recorded databaseproprietor impressions from the database proprietor audience, and thesize of the database proprietor audience. In other examples, thedatabase proprietor may receive media impression requests for mediadirectly from client devices (e.g., without being redirected by the AME)that access the media via one or more websites. In some examples,accessing media may include media retrieved from a server through awebsite in response to a user-request specifically requesting the media.In some examples, the media could be delivered by a server forpresentation via a website without a user intentionally requesting themedia. For example, some media is presented on a website as a result ofthe website being programmed to request and present the media as part ofthe website being rendered. The database proprietor may record aquantity of media impressions (e.g., impressions that are not matchedwith a user of the database proprietor) and a quantity of databaseproprietor impressions (e.g., impressions that are matched with a userof the database proprietor). In these other examples, the databaseproprietor will provide the total quantity of media impressions notmatched to a user of the database proprietor and the total quantity ofdatabase proprietor impressions (e.g. the partial audience) to the AME.

Examples disclosed herein receive the marginal media exposure data(e.g., different episodes of a streaming series, different quarter hourtime slots of an online program, or an online radio program, differentwebpages, etc.) for different unions of marginal data and/or smallerunions and estimates a total population reach (e.g., a total number ofdeduplicated users that were exposed to media in either margin of theunion) across all of the different unions. As used herein, a margin ormarginal is a subpart of media. For example, if the media corresponds toadvertisement, the margins may be different websites that include theadvertisement. In another example, if the media corresponds to aone-hour program, the margins may be 4 15-minute increments of theone-hour program. As used herein, a union can be made up of smallerunions (e.g., a union of smaller unions of marginals, such as a union ofsmaller unions of time-periods) and/or individual marginals (e.g.,websites, advertisements, time-periods (such as quarter hours), etc.).For example, a first union may include a first quarter hour marginal anda second subsequent quarter hour marginal, a second union may include athird, fourth, and fifth quarter hour marginal, and a third union mayinclude the first union and the second union. As used herein, childunions or children are the marginal time intervals and/or smaller unionsthat make up a larger union and a parent union or a parent is a largerunion that includes the child union(s) and/or children. Using the aboveexample, the children of the first union include the first quarter hourmarginal and the second quarter hour marginal and the parent of thefirst union is the third union.

In some examples, the audience measurement entity processes thecollected and/or aggregated panelist impression data corresponding topanelist impressions from panelists. Additionally, the audiencemeasurement entity obtains (e.g., from one or more service provider)database proprietor impression data for devices that are not part of apanel maintained by the AME (e.g., corresponding to the population ofusers (universe estimate)). Database proprietor impression data mayinclude, for example, a total number of impressions from a universe ofusers that was exposed to media within different margins (e.g., 15minute increments, websites, etc.). However, database proprietorimpression data may not include a total number of deduplicated uniqueusers (e.g., a population audience) from a universe of users that wasexposed to the media within a margin and/or within two or more margins(e.g., unions). Panelist impression data includes a total number ofimpressions from the panel that was exposed to the media within thedifferent margins and the total panelist audience size (e.g., thededuplicated audience size) for the different margins and/or differentunions. Accordingly, examples disclosed herein leverage panelistimpression data to be able to estimate unique audiences of universeand/or population (e.g., reach) at the different margins and/or acrossdifferent unions of time. As used herein, reach is a cumulativededuplicated total of a population that has been counted as a viewer ofthe media at least once during a margin and/or union. For example, ifthe union is a union of two web pages, the reach of a first web page isthe total deduplicated population audience of the first web page, andthe reach of a union of the two web pages is the total deduplicatedpopulation audience of at least one of the two web pages.

Some traditional techniques of determining the total population reachfor a margin or a union of marginal media ratings data include numericalcalculations that enumerate all combinations in which someone can beexposed to media based on the individual marginal media ratings ofmaking up the union. For example, estimating reach for across tenwebsites that can be visited by the same user up to 20 times, the numberof calculations needed to solve for the reach using traditionalnumerical techniques is approximately 21¹⁰, thereby exceeding the memorylimit and/or processing power of any existing computer. Examplesdisclosed herein alleviate such memory/processing resource problemsassociated with such a traditional technique by calculating the solutionusing the disclosed analytical process. Using examples disclosed hereina reach can be determined across a large number of websites without alimit to how many times the user can view the website. Examplesdisclosed here symbolically can solve (infinity{circumflex over ( )}n)probabilities with finite number of parameters with no restriction to anupper limit of impression frequency. Because infinity^(n) calculationsis impossible to solve numerically, such examples are impossible solveusing traditional numerical techniques.

To estimate the total population reach of a margin and/or union (e.g.,population margin/union reach), examples disclosed herein develop a treegraph association or tree association for the margins and union(s). Thetree graph association corresponds to the structure of the marginsand/or unions where each margin and each union corresponds to a node.Examples disclosed herein tag each node as a descendant (e.g., child,grandchild, etc.) and/or ancestor (e.g., parent, grandparent, etc.)depending on the structure of the unions corresponding to stored paneldata. For example, if panel data includes a unique audience number orpercentage corresponding to three margins (e.g., A, B, and C) and thepanel data further includes a unique audience number or percentagecorresponding to a first union (e.g., AB) and a second union (e.g.,ABC), examples disclosed herein may tag (1) nodes A and B as havingparent AB and grandparent ABC, (2) node C as having parent ABC, (3) nodeAB as having children A and B and parent ABC, and (4) node ABC as havingchildren AB and C and grandchildren A and B. Additionally, examplesdisclosed herein may tag the margin nodes (e.g., A, B, and C) as leavesand tag ABCD as a root. As used herein, a leaf is a node that does nothave children and a root is a node that has no parents.

As described above, the database proprietor impression data (e.g.,corresponding to the population or total audience) may include a totalnumber of impressions corresponding to particular margins, but may notinclude unique audience data for the margins and/or unions of themargins. Accordingly, once the tree structure association is complete,example disclosed herein utilize the panelist impression data andcorresponding tree structure association to solve for unique audience(s)(e.g., reach(es)) of margins and/or unions of the population based onthe database proprietor impression data). The unique audience of aparticular margin and/or union corresponding to a node of the treestructure association can be determined by taking the difference betweenthe total audience and the total audience of the union were removed fromthe tree association (e.g., the statistical rule of subtraction), asshown in the below-Equation 1. Examples disclosed herein leverageEquation 1 to determine unique audiences for a population union.AUD(X)=AUD(T)−A(T\X)  (Equation 1)

In Equation 1 above, AUD(X) represents the unique audience of union ormargin X (e.g., the audience which belonged to at least one of themargins corresponding to union X), the total audience AUD(T) representsthe total audience, and the total audience AUD(T\X) represents the totalaudience excluding the audience members of union X. In some examples,AUD(T) may be known (e.g., for panelist data). AUD(T) corresponds to thebelow-Equation 2.AUD(T)=z ₀ z _(N) s _(N)  (Equation 2)

In Equation 2 above, z₀ corresponds to a normalize constraintrepresentative of a percentage of the total audience not exposed to themedia, N corresponds to the node of the total audience, z_(i)=e^(λ) ^(i), where λ is an unknown Lagrange multiplier corresponding to an audience(e.g., which can be solved for), and s_(N) is defined recursively bynode height (e.g., margins being nodes at the lowest height, unions ofmargins being at the next lowest height, etc.) based on the treeassociation using the Equation 3, as shown below.

$\begin{matrix}{s_{i} = \left\{ \begin{matrix}{y_{i},} & {{if}\mspace{14mu}{node}\mspace{14mu} i\mspace{14mu}{is}\mspace{14mu} a\mspace{14mu}{leaf}} \\{{{\Pi_{j \in {{children}{(i)}}}\left( {1 + {s_{j}z_{j}}} \right)} - 1},} & {{if}\mspace{14mu}{node}\mspace{14mu} i\mspace{14mu}{has}\mspace{14mu}{children}}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 3} \right)\end{matrix}$

As used herein, node height refers to the level or hierarchy level ofthe tree structure. For example, all the leaf nodes (e.g., margins)correspond to the lowest height and the root node (e.g., the unioncorresponding to all leaf nodes of a tree association structure)corresponds to the highest height. In the preceding equation,y_(i)=e^(δi), where δ is an unknown Lagrange multiplier corresponding toimpression counts (e.g., which can be solved for). As the calculationsof s_(i) depend on its children, if any, examples disclosed hereinutilize parallel commercial solvers to solve for s_(i) in parallel(e.g., independently) at each height to be combined at a later height.

As described above, AUD(T\X) corresponds to the audience of T when theaudience of the union and/or margin X is removed from the treestructure, so the new graph only contains people who visited anythingother than X. Because removing a union and/or margin X only affects theancestors of X, AUD(T\X) can be determined based on the below-Equation4. Utilizing Equation 4 reduces the number of computations for treestructure associations (e.g., the larger the number of nodes in the treestructure association, the larger the reduction of computations),because updating the ancestors to compute AUD(T\X) (e.g., using thebelow Equation 4) can be done in parallel, once for each node. Althoughnew tree associations can be calculated for each node removal graph todetermine the total audience of Equation 3, Equation 4 utilizes theproperty that the only s_(i) variables which are impacted by nodedeletion are the ancestors of that nodeAUD(T\X)=z ₀ z _(N) s _(N) ^((new))  (Equation 4)

In Equation 4 above, s_(N) ^((new)) is defined recursively by nodeheight (e.g., margins being nodes at the lowest height, unions ofmargins being at the next lowest height, etc.) when the X union and/ormargin is removed. s_(N) ^((new)) can be determined using the Equation5, as shown below.

$\begin{matrix}{s_{k_{j}}^{({new})} = \left\{ \begin{matrix}{{\frac{s_{k_{1}} + 1}{1 + {s_{k_{0}}z_{k_{0}}}} - 1},} & {j = 1} \\{{{\left( \frac{s_{k_{j}} + 1}{1 + {s_{k_{j}}z_{k - 1}}} \right)\left( {1 + {s_{k_{j - 1}}^{({new})}z_{k_{j - 1}}}} \right)} - 1},} & {{j = 2},\ldots\;,J}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 5} \right)\end{matrix}$

In Equation 5 above, k_(j) is the node representing the j^(th) ancestorof X (e.g., k₀ is X, k₁ is the parent of X, . . . k_(J) is node N, theroot node). As the calculations of s_(kj) depend on its children, ifany, examples disclosed herein, when solving for s_(kj), can utilizeparallel commercial solvers to solve for s_(kj) in parallel (e.g.,independently) at each height to be combined at a later height.

Equation 1 (e.g., corresponding to Equations 2-5) results in a system ofequations with variable Lagrange multipliers (audience-based Lagrangemultipliers λs and impression-based Lagrange multipliers (δs). Examplesdisclosed herein determine the unique audience of one or more unionsbased on database proprietor impression data corresponding to themargins and panelist data corresponding to the margins and the unions byperforming three tasks corresponding to Equation 1. The first taskincludes solving a system of Equations corresponding to the belowEquations 6, 7, and 8 with respect to the panelist data.AUD(T)−AUD(T\{i})=A _(i) for all nodes of the tree structure associationi={1, . . . ,N}  (Equation 6)z ₀+AUD(T)=100%  (Equation 7)IMP({i})=(1+y _(i))AUD({i})  (Equation 8)

In Equation 7 above, z₀ represents the total audience (e.g., panelistaudience size) that was not exposed to the media, y_(i) is an unknownvariable corresponding to the impression-based Lagrange multipliers δs(e.g., y_(i)=e^(δi)) to be solved for, and IMP({i}) is the number ofimpressions corresponding to node i (e.g., the margin and/or union thatcorresponds to node i). Equations 6, 7, and 8 correspond to a system ofequations with audience-based Lagrange multipliers λs as solutions tothe system. Estimates of AUD(T\{i}) (corresponding to the aboveEquations 4 and 5) can be determined using commercial solvers inparallel. The commercial solvers estimating values for theaudience-based Lagrange multipliers λs of AUD(T\{i}) and iterativelyadjusting such that until all the constraints of Equations 6, 7, and 8are met. Because AUD(T) is known in panelist data, it follows thatλ₀=ln(1−A_(N)), where A_(N) is AUD(T). Additionally, because AUD({i}) isknown in panelist data, it follows that δ₀=ln(I_(i)/A_(i)−1), whereA_(i) is AUD({i}). Although it is assumed all quantities of audiences inthe above Equations are expressed in percentages of the UniverseEstimate (e.g., Equation 8 illustrates that for total population),Equations 1-8 may be used in conjunction with audience totals byslightly adjusting the Equations.

Once the first task is complete, examples disclosed herein perform asecond task in which the determined Lagrange multipliers that correspondto known database proprietor impression information (e.g., theimpression-based Lagrange multipliers δs corresponding to the panelistimpression counts of the first task and the determined Lagrangemultipliers λ₀/z₀ corresponding to the normalized constraint of theaudience of the first task) are discarded. However, different subsets ofthe audience-based Lagrange multipliers λs and/or impression-basedLagrange multipliers δs may be kept and/or discarded based on the censusdata based on the known and unknown information from the databaseproprietor. In response to discarding the Lagrange multipliers thatcorrespond to known database proprietor impression information (e.g.,Lagrange multipliers δs, λ₀ and z₀), examples disclosed herein solve thesystem corresponding to Equations 7 and 8 using the database proprietorimpression data, the now unknown normalized constraint z₀, the nowunknown impression-based Lagrange multipliers δs, and the known keptaudience-based Lagrange multipliers of the first task (e.g.,audience-based Lagrange multipliers λs), thereby resulting in a set ofimpression-based Lagrange multipliers δ{circumflex over ( )}s based onboth the panelist impression data and the database proprietor impressiondata. Once the second task is complete, examples disclosed hereinperform a third task to solve for the missing population unions usingEquation 6 with the kept audience-based Lagrange multipliers λs of thefirst task and the database proprietor impression-based Lagrangemultipliers δ{circumflex over ( )}s of the second task. As used hereinthe hat notation ({circumflex over ( )}) corresponds to the solutions tosystems of equations based on the second task (e.g., based on panelistimpression counts and database proprietor impression counts). As usedherein, variable bearing the hat notation ({circumflex over ( )}) arereferred to as database proprietor audiences and/or database proprietorimpression-based Lagrange multipliers. During the second the marginalaudience totals are implicitly calculated during the determining of theimpression constraints. Accordingly, examples disclosed here may savethe marginal audience totals during the determination of the impressionconstraints. However, if not saved, examples disclosed herein canutilize the below Equation 9 (e.g., which is a rephrased version of thesecond task described above) to calculate the marginal audiences for thepopulation.

$\begin{matrix}{{\overset{\sim}{A}}_{i} = {{{AUD}\left( \left\{ i \right\} \right)} = \frac{{\overset{\sim}{I}}_{i}}{1 + {\overset{\sim}{y}}_{i}}}} & \left( {{Equation}\mspace{14mu} 9} \right)\end{matrix}$

FIG. 1 illustrates example client devices 102 that report audienceimpression requests for Internet-based media 100 to impressioncollection entities 108 to identify a unique audience and/or a frequencydistribution for the Internet-based media. The illustrated example ofFIG. 1 includes the example client devices 102, an example network 104,example impression requests 106, and the example impression collectionentities 108. As used herein, an impression collection entity 108 refersto any entity that collects impression data such as, for example, anexample AME 112 and/or an example database proprietor 110. In theillustrated example, the AME 112 includes an example audience populationdeterminer 114.

The example client devices 102 of the illustrated example may be anydevice capable of accessing media over a network (e.g., the examplenetwork 104). For example, the client devices 102 may be an examplemobile device 102 a, an example computer 102 b, 102 d, an example tablet102 c, an example smart television 102 e, and/or any otherInternet-capable device or appliance. Examples disclosed herein may beused to collect impression information for any type of media includingcontent and/or advertisements. Media may include advertising and/orcontent delivered via websites, streaming video, streaming audio,Internet protocol television (IPTV), movies, television, radio and/orany other vehicle for delivering media. In some examples, media includesuser-generated media that is, for example, uploaded to media uploadsites, such as YouTube, and subsequently downloaded and/or streamed byone or more other client devices for playback. Media may also includeadvertisements. Advertisements are typically distributed with content(e.g., programming, on-demand video and/or audio). Traditionally,content is provided at little or no cost to the audience because it issubsidized by advertisers that pay to have their advertisementsdistributed with the content. As used herein, “media” referscollectively and/or individually to content and/or advertisement(s).

The example network 104 is a communications network. The example network104 allows the example impression requests 106 from the example clientdevices 102 to the example impression collection entities 108. Theexample network 104 may be a local area network, a wide area network,the Internet, a cloud, or any other type of communications network.

The impression requests 106 of the illustrated example includeinformation about accesses to media at the corresponding client devices102 generating the impression requests. Such impression requests 106allow monitoring entities, such as the impression collection entities108, to collect a number of media impressions for different mediaaccessed via the client devices 102. By collecting media impressions,the impression collection entities 108 can generate media impressionquantities for different media (e.g., different content and/oradvertisement campaigns).

The impression collection entities 108 of the illustrated exampleinclude the example database proprietor 110 and the example AME 112. Inthe illustrated example, the example database proprietor 110 may be oneof many database proprietors that operate on the Internet to provideservices to subscribers. Such services may be email services, socialnetworking services, news media services, cloud storage services,streaming music services, streaming video services, online retailshopping services, credit monitoring services, etc. Example databaseproprietors include social network sites (e.g., Facebook, Twitter,MySpace, etc.), multi-service sites (e.g., Yahoo!, Google, Axiom,Catalina, etc.), online retailer sites (e.g., Amazon.com, Buy.com,etc.), credit reporting sites (e.g., Experian), streaming media sites(e.g., YouTube, etc.), and/or any other site that maintains userregistration records.

In some examples, execution of the beacon instructions corresponding tothe media 100 causes the client devices 102 to send impression requests106 to servers 111, 113 (e.g., accessible via an Internet protocol (IP)address or uniform resource locator (URL)) of the impression collectionentities 108 in the impression requests 106. In some examples, thebeacon instructions cause the client devices 102 to provide deviceand/or user identifiers and media identifiers in the impression requests106. The device/user identifier may be any identifier used to associatedemographic information with a user or users of the client devices 102.Example device/user identifiers include cookies, hardware identifiers(e.g., an international mobile equipment identity (IMEI), a mobileequipment identifier (MEID), a media access control (MAC) address,etc.), an app store identifier (e.g., a Google Android ID, an Apple ID,an Amazon ID, etc.), an open source unique device identifier (OpenUDID),an open device identification number (ODIN), a login identifier (e.g., ausername), an email address, user agent data (e.g., application type,operating system, software vendor, software revision, etc.), an Ad ID(e.g., an advertising ID introduced by Apple, Inc. for uniquelyidentifying mobile devices for purposes of serving advertising to suchmobile devices), third-party service identifiers (e.g., advertisingservice identifiers, device usage analytics service identifiers,demographics collection service identifiers), etc. In some examples,fewer or more device/user identifier(s) may be used. The mediaidentifiers (e.g., embedded identifiers, embedded codes, embeddedinformation, signatures, etc.) enable the impression collection entities108 can identify to media (e.g., the media 100) objects accessed via theclient devices 102. The impression requests 106 of the illustratedexample cause the AME 112 and/or the database proprietor 110 to logimpressions for the media 100. In the illustrated example, an impressionrequest is a reporting to the AME 112 and/or the database proprietor 110of an occurrence of the media 100 being presented at the client device102. The impression requests 106 may be implemented as a hypertexttransfer protocol (HTTP) request. However, whereas a transmitted HTTPrequest identifies a webpage or other resource to be downloaded, theimpression requests 106 include audience measurement information (e.g.,media identifiers and device/user identifier) as its payload. The server111, 113 to which the impression requests 106 are directed is programmedto log the audience measurement information of the impression requests106 as an impression (e.g., a media impression such as advertisementand/or content impressions depending on the nature of the media accessedvia the client device 102). In some examples, the server 111, 113 of thedatabase proprietor 101 or the AME 112 may transmit a response based onreceiving an impression request 106. However, a response to theimpression request 106 is not necessary. It is sufficient for the server111, 113 to receive the impression request 106 to log an impressionrequest 106. As such, in examples disclosed herein, the impressionrequest 106 is a dummy HTTP request for the purpose of reporting animpressions but to which a receiving server need not respond to theoriginating client device 102 of the impression request 106.

The example database proprietor 110 maintains user account recordscorresponding to users registered for services (such as Internet-basedservices) provided by the database proprietors. That is, in exchange forthe provision of services, subscribers register with the databaseproprietor 110. As part of this registration, the subscribers providedetailed demographic information to the database proprietor 110.Demographic information may include, for example, gender, age,ethnicity, income, home location, education level, occupation, etc. Inthe illustrated example, the database proprietor 110 sets a device/useridentifier on a subscriber's client device 102 that enables the databaseproprietor 110 to identify the subscriber.

In the illustrated example, the example AME 112 does not provide themedia 100 to the client devices 102 and is a trusted (e.g., neutral)third party (e.g., The Nielsen Company, LLC) for providing accuratemedia access (e.g., exposure) statistics. The example AME 112 includesthe example audience population determiner 114. As further disclosedherein, the example audience population determiner 114 provides mediaaccess statistics related to the example impression requests 106.

The audience population determiner 114 calculates a total reach (e.g., atotal unique audience) exposed to particular media (e.g., the media 100)for one or more margins (e.g., durations of time, websites,advertisements, etc.) and/or unions (e.g., two or more combinations themargins) based on the panelist impression totals and database proprietorimpression totals from the example database proprietor 110. The exampleaudience population determiner 114 receives panelist impression countsfrom client device 102 of panelists according to margins (e.g.,different time-periods (quarter hours, half hours, hours, days, etc.),websites, episodes, advertisements, etc.) of the media 100. The audiencepopulation determiner 114 stores the impression in conjunction with thepanelist identifiers corresponding to the panelist impression count. Inthis manner, the audience population determiner 114 can determine thetotal unique panelists that were exposed to the media 100 for eachmargin, the total unique panelist that were exposed to the media 100across unions, and the total number of impression counts for the media100 at each margin. Additionally, the example audience populationdeterminer 114 receives (e.g., from the database proprietor 110) andstores the total number of database proprietor impression counts loggedby the database proprietor 110.

Additionally, the example audience population determiner 114 may receiveunion data related to unions of the different marginals and/or may bestructured to develop preset unions based on margins of a particularmedia. For example, the audience population determiner 114 may receiveunions based on instructions from a user and/or a manufacturer. Thereceived unions may be representative of combinations of time-basedmargins (e.g., a half hour, an hour, a daypart, and/or any combinationof time interval corresponding to some or all of the quarter hours for aparticular day) websites, episodes, advertisements, etc. In someexamples, a union may include multiple unions. For example, union ABCD(e.g., 15 minute margins of an hour show, four episodes of a web series,four advertisements on different web pages, etc.) may be a union ofunion AB (e.g., a first union of the first two 15 minute incrementsrepresentative of the unique panel audience of the first 30 minutes ofthe show, a first union of the first two episodes of a web series, etc.)and union CD (e.g., a second union of the second two 15 minuteincrements representative of the unique panel audience of the second 30minutes of the show, a second union of the second two episodes of a webseries, etc.), where union AB is a union of marginal A and marginal Band union CD is a union of marginal C and marginal D. Each union mayhave corresponding descendants and/or ancestors. Using the aboveexample, the parent of union AB is union ABCD and the children of unionAB are A and B. Each union corresponds to a union reach (e.g., adeduplicated number of people exposed to media across all marginals inthe union). The example audience population determiner 114 generates atree structure association by tagging each node (e.g., each margin orunion) with the corresponding descendants and/or ancestors.

Once the example audience population determiner 114 of FIG. 1 determinesand/or obtains the panelist impression totals for the margins, thepanelist unique audience totals for the margins and the unions, and thepopulation impression totals (e.g., corresponding to the databaseproprietor impression counts) of the margins, the audience populationdeterminer 114 uses the above Equations 1-9 to perform three tasks todetermine the reach(es) of one or more of the unions for the population.The audience population determiner 114 executes the first task byutilizing commercial solvers to determine audience-based Lagrangemultipliers λs and impression-based Lagrange multipliers δs from asystem of equations corresponding to Equations 6-8 based on the panelistdata. The audience population determiner 114 executes the second task byutilizing commercial solvers to discard the impression-based Lagrangemultipliers δs corresponding to known database proprietor information(e.g., panelist impression counts of the first task and λ₀/z₀corresponding to the normalized constraint of the audience of the firsttask, thereby returning the Lagrange multipliers δs, λ₀ and z₀ and tovariables) and keep the solved Lagrange multipliers corresponding tounknown panelist data (e.g., audience-based Lagrange multipliers λscorresponding to the audiences from the first task). The audiencepopulation determiner 114 determines the δ{circumflex over ( )}s (e.g.,corresponding to the now variable Lagrange multipliers δs, λ0, and z₀)from a system of equations corresponding to Equations 6-8 based on theaudience-based Lagrange multipliers λs determined from the first taskand the database proprietor impression totals corresponding to themargins. The audience population determiner 114 executes the third taskby solving for the missing population unions using Equation 6 with theaudience-based Lagrange multipliers λs of the first task and theδ{circumflex over ( )}s of the second task. During the second themarginal audiences are implicitly calculated when solving for theimpression constraints. However, if not saved, examples disclosed hereincan utilize the above Equation 9 (e.g., which is a rephrased version ofthe second task) to calculate the marginal audiences for the population.

In operation, the example client devices 102 employ web browsers and/orapplications (e.g., apps) to access media. Some of the web browsers,applications, and/or media include instructions that cause the exampleclient devices 102 to report media monitoring information to one or moreof the example impression collection entities 108. That is, when theclient device 102 of the illustrated example accesses media, a webbrowser and/or application of the client device 102 executesinstructions in the media, in the web browser, and/or in the applicationto send the example impression request 106 to one or more of the exampleimpression collection entities 108 via the network (e.g., a local areanetwork, wide area network, wireless network, cellular network, theInternet, and/or any other type of network). The example impressionrequests 106 of the illustrated example include information aboutaccesses to the media 100 and/or any other media at the correspondingclient devices 102 generating the impression requests 106. Suchimpression requests allow monitoring entities, such as the exampleimpression collection entities 108, to collect media impressions fordifferent media accessed via the example client devices 102. In thismanner, the impression collection entities 108 can generate mediaimpression quantities for different media (e.g., different contentand/or advertisement campaigns).

When the example database proprietor 110 receives the example impressionrequest 106 from the example client device 102, the example databaseproprietor 110 requests the client device 102 to provide a device/useridentifier that the database proprietor 110 had previously set for theexample client device 102. The example database proprietor 110 uses thedevice/user identifier corresponding to the example client device 102 toidentify the subscriber of the client device 102.

The example AME 112 receives database proprietor demographic impressiondata from the example database proprietor 110. The database proprietordemographic impression data may include information relating to a totalnumber of the logged database proprietor impressions that correspondwith a registered user of the database proprietor 110 and/or any otherinformation related to the logged database proprietor impressions (e.g.,demographics, a total number of registered users exposed to the media100 more than once, etc.). The example audience population determiner114 determines a total unique audience across different margins and/orunions based on impression requests 106.

FIGS. 2A-2C illustrate an example transformation of example marginal andunion data and a corresponding representation of a tree structureassociation that may be generated by the example audience populationdeterminer 114 of FIG. 1 . FIG. 2A includes example marginal and uniondata 200. FIG. 2B includes an example tree structure 202. FIG. 2Cincludes an example tree structure conversion 204 corresponding to aremoval of a node, and an example resulting node removal tree structure206.

The example marginal and union data 200 of FIG. 2A corresponds to thetotal number of panelist impression counts for four margins (e.g., A, B,C, D), a unique panelist audience size for the four margins and theunique panelist audience size for different unions of the margins (e.g.,AB, CD, and ABCD). For example, the audience population determiner 114may be instructed (e.g., based on user, manufacturer, and/or presetinstructions) to generate reaches (e.g., a unique deduplicated audiencefor the population) across union AB, union CD, and union ABCD. In suchan example, the audience population determiner 114 accesses panelistdata corresponding to the panelist impressions for the margins todetermine unique panelist audience sizes that were exposed to the media100 at margin A, B, C, D and unique panelist audience sizes that wereexposed to the media at unions AB, BC, and ABCD. Accordingly, theaudience population determiner 114 processes the panelist impressiondata to determine the impression data totals and/or to remove duplicatepanelist data for the unions (e.g., panelist that were included morethan one margin corresponding to a union). Although the example marginaland union data 200 of FIG. 2 corresponds to website visits, the marginaland union data 200 may correspond to any type of media. For example, themarginal and union data 200 may correspond store visits from consumersacross different margins (e.g., stores) and unions (e.g., combination ofstores) and the impressions may correspond to purchases made at thestores.

For example, as shown in the marginal and union data 200 of FIG. 2A, theaudience population determiner 114 determines that 100 panelists wereexposed to the media during margin A (e.g., a first website), 200panelists were exposed to the media during margin B (e.g., a secondwebsite), 300 panelists were exposed to the media during margin C (e.g.,a third website), 400 panelists were exposed to the media during marginD (e.g., a fourth website), 250 panelists were exposed to the mediaduring union AB (e.g., the first website and/or the second website), 550panelists were exposed to the media during union CD (e.g., the firstwebsite and/or the fourth website), and 700 panelists were exposed tothe media during union ABCD (e.g., any one of and/or any combination ofthe four websites). Additionally, the audience population determiner 114obtains database proprietor impression totals corresponding to thepopulation exposed of the media at the margins A, B, C, and D from thedatabase proprietor 110. In the example of FIG. 2A, the audiencepopulation determiner 114 determines that are 400 population impressionsfor the first margin A, 600 population impressions for the second marginB, 800 population impressions for the third margin C, and 1000population impressions for the fourth margin D.

The example tree structure 202 of FIG. 2B corresponds to the treestructure of the margins and unions of the example marginal and uniondata 200 of FIG. 2A. The tree structure 202 corresponds to a treelinkage of margins and unions based on the unions identified in theexample margin and union data 200. Alternatively, other tree structurescan be generated based on different combination of margins and/or unions(e.g., so long as each node has no more than one parent). The exampleaudience population determiner 114 generates a tree structureassociation or tree associations corresponding to the example treestructure 202 by tagging the margins and/or unions with correspondingnode numbers, ancestors, and/or descendants. For example, the audiencepopulation determiner 114 may tag the AB union with a node number (e.g.,5) and may tag the AB node as having a parent union of ABCD (e.g., node7) and children margins A and B (e.g., nodes 1 and 2). In this manner,commercial solvers of the audience population determiner 114 can utilizethe values of the example margin and union data 200 for thecorresponding variables of the above Equations 1-9.

The example tree structure conversion 204 of FIG. 2C illustrates aremoval of a node (e.g., node 6 corresponding to union CD) from theexample tree structure 202, thereby resulting in the example noderemoval tree structure 206 of FIG. 2B. The example tree structure 202corresponds to the total audience (e.g., AUD(T) of Equations 1, 2, 6,and 7) while the example node removal tree structure 206 corresponds tothe total audience if node 6 (e.g., union CD) was removed (e.g.,AUD(T\6) of Equations 1, 4 and 6). The example union population reachdeterminer 114 can compute AUD(T/6) using a first technique by utilizingthe example node removal tree structure 206 itself and utilize the aboveEquation 3 or using a second technique by computing s values of only theancestors that are impacted (e.g., using Equation 5), thereby conservingmemory and time by eliminating computations corresponding to the firsttechnique. The example audience population determiner 114 can determinethe population audience of union CD by leveraging the fact that theaudience of CD is equivalent to the audience of ABCD minus the audienceof ABCD if the CD union is removed, as shown in the example node removaltree structure 206.

FIG. 3 is a block diagram of the example audience population determiner114 of FIG. 1 to determine population reach for given media based onunions of marginal ratings data. The example audience populationdeterminer 114 includes an example interface(s) 300, an example panelistimpression storage 301, an example data converter 302, an exampleassociation controller 304, an example local memory 306, and an examplecommercial solver(s) 308.

The example interface(s) 300 of FIG. 3 receives panelist impressionsfrom the example panelist devices 102 d, 102 e of FIG. 1 correspondingto media predefined margins, panelist impression totals from the exampledatabase proprietor 110 a universe estimate of the population (e.g.,database proprietor user population) from the database proprietor 110.The example panelist impression storage 301 of FIG. 1 stores receivedpanelist impressions in conjunction with a user identifier and the media100. The received panelist impressions may include data identifying themedia 100, a timestamp, a source, etc. Additionally, the exampleinterface(s) 300 may output an estimated population reach(es) (e.g., adeduplicated population audience total) for one or more margins and/orunions to another device/system and/or as a report to a user.

The example data converter 302 of FIG. 3 processes the databaseproprietor impression counts from the database proprietor 110 and/or thepanelist impression data from panelist impression storage 301. Theexample data converter 302 selects one or more unions to analyze (e.g.,to determine population reach(es)). The data converter 302 may bestructured to select preset margin(s) and/or union(s) and/or may receiveinstructions from a user and/or a manufacturer corresponding to one ormore margin(s) and/or union(s) to analyze. For example, in the examplesdescribed in conjunction with FIGS. 2A-2C, the data converter 302selects margins A, B, C, D and unions AB, CD, and ABCD. Alternatively,different margins and/or unions based on the different margins may beused so long as each union and/or margin only has one parent. Using theabove example, the data converter 302 obtains impression data stored inthe example panelist impression storage 301 corresponding to the marginsA, B, C, and D. Because each stored impression is stored in conjunctionwith a panelist identifier, the data converter 302 can deduplicate anyduplicate impressions to determine the total number of panelists exposedto the media in conjunction with the margins. For example, if there aretwo impressions corresponding to the same margin and same panelist, thedata converter 302 corresponds to the two panelist impressions to oneaudience count. In a similar manner, the data converter 302 determinesthe unique audience of the unions based on the panelist impression data.Additionally, the data converter 302 may convert the audience totalsand/or impression totals into percentages (e.g., normalized percentages)by dividing the respective audience totals and/or impression totals bythe universe estimate.

The example association controller 304 of FIG. 3 generates the treestructure association based on the margins and selected unions. Forexample, using the unions and margins of the example of FIG. 2A, theassociation controller 304 tags each margin and union with (i) a numberor other identifier and (ii) with corresponding ancestors and/ordescendants. For example, the association controller 304 tags the ABunion (e.g., node of the tree structure 202 of FIG. 2 ) with a nodenumber/identifier (e.g., 5) and tags the AB node/union as having aparent union of ABCD (e.g., node 7) and children margins A and B (e.g.,nodes 1 and 2). The association controller 304 stores the tags inconjunction with the panelist and/or population margin and/or unionpercentages in the example local memory 306. In this manner, thecommercial solver(s) 308 can solve a system of equations using thetagged panelist and/or population margin and/or union percentages storedin the example local memory 306.

The example commercial solver(s) 308 of FIG. 3 are optimization softwarepacket(s) that solve(s) one or more system(s) of equations using thetagged panelist and/or population margin and/or union percentages storedin the example local memory 306 to estimate the population reach of oneor more union(s) of the margins. For example, the commercial solver(s)308 may be a CPLEX optimizer, a GNU lineark programming kit (GLPK), aGurobi Optimizer, a solving constraint integer program, and/or any typeof mixed integer programming optimizer. As described above, thecommercial solver(s) 308 execute(s) three tasks (e.g., corresponding tosolving for parameters in a system of equations) to estimate thepopulation reach(es). The first task results in parameters of the panel,the second task results in parameters of the population (e.g., thedatabase proprietor population), and the third task determines the oneor more population reaches for the margins and/or unions based on theparameters of the first task and the second task. For example, thecommercial solver(s) 308 solve(s) the system of equations using theabove Equation 8 to solve for the Lagrange multipliers (e.g.,impression-based Lagrange multipliers δs). Based on Equation 6, theexample commercial solver(s) 308 need to determine AUD(T\{i}) for allnodes i. Additionally, the commercial solver(s) 308 solve(s) the systemof equations using the above Equations 6-7 and the determinedimpression-based Lagrange multipliers δs with an iterative processutilizing the tagged panelist union and margin data to solve forLagrange multipliers (e.g., audience-based Lagrange multipliers λs) thatsatisfy the system of Equations 6 and 7. Because removing node i onlyaffects ancestors of i, the example commercial solver(s) 308 can solvefor the audience-based Lagrange multipliers λs corresponding toAUD(T\{i}) in parallel at each height starting at the lowest height(e.g., the margin height in parallel first, the parent height inparallel second, the grandparent height in parallel third, etc.). Forexample, the commercial solver(s) 308 can solve for the audience-basedLagrange multipliers λs in parallel by performing computations with aprocessor (e.g., concurrently processing threads in a multi-threadingprocessor, utilizing multiple cores of a multiple ore processor inparallel, utilizing a multiple processor system in parallel, etc.)Completion of the first task results in a set of audience-based Lagrangemultipliers λs and impression-based Lagrange multipliers δs, eachcorresponding to nodes of the tree structure. Once the first task iscomplete, the example commercial solver(s) 308 perform(s) a second taskin which Lagrange multipliers corresponding to known database proprietordata (e.g., the impression-based Lagrange multipliers δs andaudience-based Lagrange multiplier λ₀ corresponding to the impressioncounts of the tree structure association of FIG. 2 ) are discarded andthe remaining Lagrange multipliers corresponding to unknown datapanelist data (e.g., audience-based Lagrange multipliers λscorresponding to audiences at the margins and/or unions of the treestructure association of FIG. 2 ) are kept. In response to discardingthe Lagrange multipliers (e.g., impression-based Lagrange multipliers δsand impression-based Lagrange multiplier λ₀), the example commercialsolver(s) 308 solve(s) the system corresponding to Equations 6-8 usingthe database proprietor impressions totals for the margins and the knownvalues of the first task (e.g., λ₁-λ_(N)), thereby resulting in a set ofδ{circumflex over ( )}s based on both the panelist data and the databaseproprietor data. Once the second task is complete, the examplecommercial solver(s) 308 performs a third task using the set ofδ{circumflex over ( )}s in conjunction with the above Equation 6 todetermine the population reach estimate(s) for one or more margin(s)and/or union(s).

While an example manner of implementing the example population reachdeterminer 120 of FIG. 1 is illustrated in FIG. 3 , one or more of theelements, processes and/or devices illustrated in FIG. 3 may becombined, divided, re-arranged, omitted, eliminated and/or implementedin any other way. Further, the example interface(s) 300, the examplepanelist impression storage 301, the example data converter 302, theexample association 304, the example local memory 306, the examplecommercial solver(s) 308, and/or, more generally, the example populationreach determiner 120 of FIG. 3 may be implemented by hardware, software,firmware and/or any combination of hardware, software and/or firmware.Thus, for example, any of the example interface(s) 300, the examplepanelist impression storage 301, the example data converter 302, theexample association 304, the example local memory 306, the examplecommercial solver(s) 308, and/or, more generally, the example populationreach determiner 120 of FIG. 3 could be implemented by one or moreanalog or digital circuit(s), logic circuits, programmable processor(s),programmable controller(s), graphics processing unit(s) (GPU(s)),digital signal processor(s) (DSP(s)), application specific integratedcircuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)) and/or fieldprogrammable logic device(s) (FPLD(s)). When reading any of theapparatus or system claims of this patent to cover a purely softwareand/or firmware implementation, at least one of example interface(s)300, the example panelist impression storage 301, the example dataconverter 302, the example association 304, the example local memory306, the example commercial solver(s) 308, and/or, more generally, theexample population reach determiner 120 of FIG. 3 is/are herebyexpressly defined to include a non-transitory computer readable storagedevice or storage disk such as a memory, a digital versatile disk (DVD),a compact disk (CD), a Blu-ray disk, etc. including the software and/orfirmware. Further still, the example population reach determiner 120 ofFIG. 3 may include one or more elements, processes and/or devices inaddition to, or instead of, those illustrated in FIG. 3 , and/or mayinclude more than one of any or all of the illustrated elements,processes and devices. As used herein, the phrase “in communication,”including variations thereof, encompasses direct communication and/orindirect communication through one or more intermediary components, anddoes not require direct physical (e.g., wired) communication and/orconstant communication, but rather additionally includes selectivecommunication at periodic intervals, scheduled intervals, aperiodicintervals, and/or one-time events.

Flowcharts representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the example population reachdeterminer 120 of FIG. 1 are shown in FIGS. 4-7 . The machine readableinstructions may be one or more executable programs or portion(s) of anexecutable program for execution by a computer processor such as theprocessor 812 shown in the example processor platform 800 discussedbelow in connection with FIG. 8 . The program(s) may be embodied insoftware stored on a non-transitory computer readable storage mediumsuch as a CD-ROM, a floppy disk, a hard drive, a DVD, a Blu-ray disk, ora memory associated with the processor 812, but the entireties of theprogram(s) and/or parts thereof could alternatively be executed by adevice other than the processor 812 and/or embodied in firmware ordedicated hardware. Further, although the example program(s) is/aredescribed with reference to the flowcharts illustrated in FIGS. 4-7 ,many other methods of implementing the example population reachdeterminer 120 may alternatively be used. For example, the order ofexecution of the blocks may be changed, and/or some of the blocksdescribed may be changed, eliminated, or combined. Additionally oralternatively, any or all of the blocks may be implemented by one ormore hardware circuits (e.g., discrete and/or integrated analog and/ordigital circuitry, an FPGA, an ASIC, a comparator, anoperational-amplifier (op-amp), a logic circuit, etc.) structured toperform the corresponding operation without executing software orfirmware.

The machine readable instructions described herein may be stored in oneor more of a compressed format, an encrypted format, a fragmentedformat, a packaged format, etc. Machine readable instructions asdescribed herein may be stored as data (e.g., portions of instructions,code, representations of code, etc.) that may be utilized to create,manufacture, and/or produce machine executable instructions. Forexample, the machine readable instructions may be fragmented and storedon one or more storage devices and/or computing devices (e.g., servers).The machine readable instructions may require one or more ofinstallation, modification, adaptation, updating, combining,supplementing, configuring, decryption, decompression, unpacking,distribution, reassignment, etc. in order to make them directly readableand/or executable by a computing device and/or other machine. Forexample, the machine readable instructions may be stored in multipleparts, which are individually compressed, encrypted, and stored onseparate computing devices, wherein the parts when decrypted,decompressed, and combined form a set of executable instructions thatimplement a program such as that described herein. In another example,the machine readable instructions may be stored in a state in which theymay be read by a computer, but require addition of a library (e.g., adynamic link library (DLL)), a software development kit (SDK), anapplication programming interface (API), etc. in order to execute theinstructions on a particular computing device or other device. Inanother example, the machine readable instructions may need to beconfigured (e.g., settings stored, data input, network addressesrecorded, etc.) before the machine readable instructions and/or thecorresponding program(s) can be executed in whole or in part. Thus, thedisclosed machine readable instructions and/or corresponding program(s)are intended to encompass such machine readable instructions and/orprogram(s) regardless of the particular format or state of the machinereadable instructions and/or program(s) when stored or otherwise at restor in transit.

As mentioned above, the example processes of FIGS. 4-7 may beimplemented using executable instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media.

“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim employs any formof “include” or “comprise” (e.g., comprises, includes, comprising,including, having, etc.) as a preamble or within a claim recitation ofany kind, it is to be understood that additional elements, terms, etc.may be present without falling outside the scope of the correspondingclaim or recitation. As used herein, when the phrase “at least” is usedas the transition term in, for example, a preamble of a claim, it isopen-ended in the same manner as the term “comprising” and “including”are open ended. The term “and/or” when used, for example, in a form suchas A, B, and/or C refers to any combination or subset of A, B, C such as(1) A alone, (2) B alone, (3) C alone, (4) A with B, (5) A with C, (6) Bwith C, and (7) A with B and with C. As used herein in the context ofdescribing structures, components, items, objects and/or things, thephrase “at least one of A and B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. Similarly, as used herein in the contextof describing structures, components, items, objects and/or things, thephrase “at least one of A or B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. As used herein in the context ofdescribing the performance or execution of processes, instructions,actions, activities and/or steps, the phrase “at least one of A and B”is intended to refer to implementations including any of (1) at leastone A, (2) at least one B, and (3) at least one A and at least one B.Similarly, as used herein in the context of describing the performanceor execution of processes, instructions, actions, activities and/orsteps, the phrase “at least one of A or B” is intended to refer toimplementations including any of (1) at least one A, (2) at least one B,and (3) at least one A and at least one B.

FIG. 4 is an example flowchart 400 representative of example machinereadable instructions that may be executed by the example audiencepopulation determiner 114 of FIGS. 1 and/or 3 to generate respectivepopulation reach estimate(s) for various margins and/or unions. Theexample flowchart 400 is described in conjunction with the examplemarginal and union data 200 of FIG. 2 . However, the example flowchart400 may be implemented in conjunction with any panelist data, databaseproprietor data, margins, and/or unions.

At block 402, the example association controller 304 (FIG. 3 )determines panelist unique audience(s) corresponding to margin(s) and/orunion(s) of the media 100 of FIG. 1 . For example, the associationcontroller 304 accesses the panelist impression storage 301 of FIG. 3 toobtain impression data corresponding to particular marginals and/orunion data based on predefined margins and/or unions (e.g., thepredefined margins and/or unions based on user and/or manufacturerpreferences). Using the example of FIG. 2A, the interface(s) 300 obtainspanelist impression data from the panelist impression storage 301corresponding to particular media (e.g., a television show) at marginsA, B, C, and D. The association controller 304 processes the panelistimpression data to determine the unique audience of the margins (e.g.,A, B, C, and D) and/or unions (e.g., AB, CD, and ABCD). Additionally,the example data converter 302 (FIG. 3 ) may convert the unique panelistaudience total and/or panelist impression total into a percentage bynormalizing the totals to be 100%. For example, the data converter 302may divide the panelist audience totals for the margins and/or unions bythe total number of panelists in the panel and/or dividing the panelistimpression totals by the total number of panelists in the panel. In someexamples, when the panelist audience totals have been weighted by somepre-determined weight to match census proportions, the data converter302 may divide the panelist audience totals for the margins and/orunions by the universe estimate.

At block 403, the example data converter 302 processes the databaseproprietor impression data corresponding to the margins of the media.For example, the data converter 302 obtains the database proprietorimpression data from the database proprietor 110 via the exampleinterface(s) 300 of FIG. 3 . As described above in conjunction with FIG.3 , the data converter 302 process the database proprietor impressiondata by converting the database proprietor impression count(s) of themargins into a normalized impression percentage(s) (e.g., by dividingthe counts by total number of panelists). At block 404, the exampleassociation controller 304 generates a tree structure association of theunions/margins. As described above in conjunction with FIG. 3 , theexample association controller 304 generates a tree structureassociation by tagging the margins and unions with numbers and/oridentifiers and tagging each node with corresponding ancestor and/ordescendant information. The tree structure association information isstored in the example local memory 306.

At block 406, the example commercial solver(s) 308 (FIG. 3 )determine(s) Lagrange multipliers based on panelist data. For example,the commercial solver(s) 308 solve(s) for the Lagrange multipliers usingEquations 6-8 (e.g., where AUD(A)=0.1, AUD(B)=0.2, AUD(C)=0.3,AUD(D)=0.4, AUD(AB)=0.25, AUD(CD)=0.55, AUD(ABCD)=0.7, IMP(A)=0.2,IMP(B)=0.3, IMP(A)=0.4, and IMP(A)=0.5) based on the panelist data andtree structure association data stored in the local memory 306 (FIG. 3). An example process that may be used to implement block 406 isdescribed below in conjunction with FIG. 5 . For example, using Equation8 the commercial solver(s) 308 determine(s) that y₁=1, y₂=0.5, y₃=0.333,and y₄=0.25. Because y_(i)=e^(δi), the commercial solver(s) 308determine(s) that δ₁=0, δ₂=−0.6931, δ₃=−1.0986, and δ₄=−1.3863.Additionally, the commercial solver(s) 308 determine(s), based on thedetermined y values that satisfy the system of equations represented byEquations 6-8, λ₀=−2.1438, λ₁=−1.0986, λ₂=0.6931, λ₃=0.5878, λ₄=1.3863,λ₅=−2.0149, λ₆=−1.1939, and λ₇=0.8109, where λ₀ corresponds to thenormalized constraint, λ₁ corresponds to the margin A (e.g.,corresponding to node 1), λ₂ corresponds to the margin B (e.g.,corresponding to node 2), . . . , and λ₇ corresponds to the union ABCD(e.g., corresponding to node 7). Because z_(i)=e^(λ) ^(i) , thecommercial solver(s) 308 determine(s) that z₀32 0.3, z₁=0.333, z₂=2,z₃=1.8, z₄=4, z₅=0.133, z₆=0.303, z₇=2.25.

At block 408, the example commercial solver(s) 308 keep(s) values of theLagrange multipliers corresponding to the unknown database proprietordata (.g., in the example of FIG. 2A, panelist audience size(s) (e.g.,λ₁=−1.0986, λ₂=0.6931, λ₃=0.5878, λ₄=1.3863, λ₅=−2.0149, λ₆=−1.1939, andλ₇=0.8109)). At block 410, the example commercial solver(s) 308discard(s) the Lagrange multipliers corresponding to known databaseproprietor data. Using the example of FIG. 2A, the commercial solver(s)308 discard(s) impression counts (e.g., impression-based Lagrangemultipliers δs) and the Lagrange multiplier corresponding to the size ofthe panelist audience not exposed to the media (e.g., λ₀), therebydesignating the Lagrange multiplier variables δs and λ₀ and z₀ (e.g.,z₀=e^(λ0) as empty, overwritable/replaceable, or ready to be determinedat a subsequent time.

At block 412, the example commercial solver(s) 308 determine(s) thevariable Lagrange multipliers based on the panelist data and databaseproprietor data. For example, the commercial solver(s) 308 determine(s)the variable Lagrange multipliers (e.g., impression-based Lagrangemultipliers δs) and the value corresponding to the size of the size ofthe panelist audience not exposed to the media (e.g., z₀ and/or λ₀)using the system of equations corresponding to Equations 6-8 based onthe kept Lagrange multipliers (e.g., λ₁=−1.0986, λ₂=0.6931, λ₃=0.5878,λ₄=1.3863, λ₅=−2.0149, λ₆=−1.1939, and λ₇=0.8109) and the populationimpression totals of the margins (e.g., IMP(A)=0.4, IMP(B)=0.6,IMP(C)=0.8, IMP(D)=1), thereby resulting in δ{circumflex over ( )}s andz₀, as further described below in conjunction with FIG. 6 . For example,using the example data of FIG. 2A, the commercial solver(s) 308determine(s) that δ{circumflex over ( )}₁=0.4314, δ{circumflex over( )}₂=−0.0380, δ{circumflex over ( )}₃=−0.4038, δ{circumflex over( )}₄=−0.4995, and z₀=0.1172 (e.g., λ{circumflex over ( )}₀=2.1438 perthe system of equations and z₀=e^(λ0)). At block 414, the examplecommercial solver(s) 308 estimate(s) the population reach(es) for one ormore of the margins (e.g., A, B, C, and/or D) and/or unions (e.g., AB,CD, and/or ABCD) based on the Lagrange multipliers (e.g., the λ₀ and theδ{circumflex over ( )}s) determined at blocks 406 and 412 using theabove Equation 6, as further described below in conjunction with FIG. 7. As a result of block 414, the example commercial solver(s) 308determine(s) that the population reach for the A margin is 128, thepopulation reach of the B margin is 306, the population reach of the Cmargin is 480, the population reach of the B margin is 622, thepopulation reach of the AB union is 360, the population reach of the CDunion is 762, and the population reach of the ABCD union is 883.

FIG. 5 is an example flowchart 406 representative of example machinereadable instructions that may be executed by the example audiencepopulation determiner 114 of FIGS. 1 and/or 3 to solve for the Lagrangemultipliers using Equations 6-8 (e.g., where AUD(A)=0.1, AUD(B)=0.2,AUD(C)=0.3, AUD(D)=0.4, AUD(AB)=0.25, AUD(CD)=0.55, AUD(ABCD)=0.7,IMP(A)=0.2, IMP(B)=0.3, IMP(A)=0.4, and IMP(A)=0.5) based on thepanelist data and tree structure association data stored in the localmemory 306. The instructions of FIG. 5 may be used to implement block406 of FIG. 4 . The example flowchart 406 is described in conjunctionwith the example marginal and union data 200 of FIG. 2A. However, theexample flowchart 406 may be implemented in conjunction with anypanelist data, database proprietor data, margins, and/or unions.

At block 502, the example commercial solver(s) 308 determine(s) thepanelist audience size percentage across all margins (e.g., AUD(T) ofEquation 6). Using the example of FIG. 2 , the commercial solver(s) 308determine(s) that the panelist audience size across all marginscorresponds to 0.7 (e.g., the percentage corresponding to the unionABCD). At block 504, the example commercial solver(s) 308 determine(s)the total percentage of panelists not exposed to media (e.g., z₀ ofEquation 7). For example, the commercial solver(s) 308 determine(s) thatthe total percentage of panelists not exposed to media is 0.3 (e.g.,z₀+0.7=1.0, from Equation 7). Accordingly, the commercial solver(s) 308determine(s) that λ₀=−1.20397, because z_(i)=e^(λ) ^(i) .

At block 506, the example commercial solver(s) 308 set(s) up a system ofequations based on Equation 6 corresponding to removal off each node ofthe tree structure association using the panelist data and for therelations between marginal panelist audience size and marginal panelistimpression counts (e.g., corresponding to Equation 8). For example, thecommercial solver(s) 308 set(s) up a system of equations including0.7−AUD(T\1)=0.1 for node 1 (e.g., margin A), 0.7−AUD(T\2)=0.2 for node2 (e.g., margin B), . . . , 0.7−AUD(T\6)=0.55 for node 6 (e.g., unionCD), IMP(1)=(1+y₁)(AUD(1)), . . . , IMP(4)=(1+y₄)(AUD(4)). At block 507,the example commercial solver(s) 380 solve for the variables (e.g., ys)corresponding to the Lagrange multipliers of the margins (e.g.,impression-based Lagrange multipliers δs) using Equation 8. For example,the commercial solver(s) 380 determine that based on the above Equationscorresponding to Equation 8, y₁=1, y₂=0.5, y₁=0.333, and y₁=0.25. Thus,δ₁=0, δ₂=−0.6931, δ₃=−1.0986, and δ₄=−1.3863.

At block 508, the example commercial solver(s) 308 select(s) allequations corresponding to node(s) at the lowest available height (e.g.,margins being the lowest height and the union corresponding to the totalrepresenting the highest height). As described above, because removing anode from the tree structure association only affects the ancestors ofthe node, the commercial solver(s) 308 perform(s) parallel computationswith a processor to calculate the Lagrange multipliers at the sameheight in parallel without affecting the other nodes. For example,initially the commercial solver(s) select(s) the equations correspondingto the lowest level nodes (e.g., 1, 2, 3, and 4) corresponding to themargins A, B, C, and D (e.g., 0.7−AUD(T\1)=0.1, 0.7−AUD(T\2)=0.2,0.7−AUD(T\3)=0.3, and 0.7−AUD(T\4)=0.3).

At block 510, the example commercial solver(s) 308 select(s) value(s)for the Lagrange multiplier(s) that satisfy(ies) the equations. Asdescribed above, each of the selected equations corresponds to Equation4, which include variable(s) that can be identified using Equation 5.Because both Equation 4 and Equation 5 include z values and z_(i)=e^(λ)^(i) , the commercial solver(s) 308 can select a value for the Lagrangemultipliers (λi) that satisfies the selected equation(s). The examplecommercial solver(s) 308 determine(s) if the selected value(s)satisfy(ies) the constraint(s) of the selected equation(s) (e.g., withina threshold amount of error) (block 512).

If the example commercial solver(s) 308 determine(s) that the selectedvalue(s) do(es) not satisfy(ies) the constraint(s) of the selectedequation(s) (block 512: NO), the commercial solver(s) 308 adjust(s) theselected value(s) of the Lagrange multipliers (block 514) and controlreturns to block 512 until the selected value(s) do(es) satisfy theconstraints (e.g., within the threshold amount of error). In thismanner, the example commercial solver(s) 308 perform(s) parallelcomputations with a processor to determine the Lagrange multipliers inan iterative fashion in parallel. If the example commercial solver(s)308 determine(s) that the selected value(s) do(es) satisfy theconstraint(s) of the selected equation(s) (block 512: YES), the examplecommercial solver(s) 308 determine(s) if there are additional node(s) ofthe tree structure association at additional height(s) (block 516). Forexample, once the example commercial solver(s) 308 determine(s) theLagrange multipliers for the margins A, B, C, and D, the commercialsolver(s) 308 determine(s) that there are additional nodes (e.g., AB andCD) at the next lowest height. If the commercial solver(s) 308determine(s) that there are additional node(s) at additional height(s)(block 516: YES), control returns to block 508 to determine the Lagrangemultipliers corresponding to the additional node(s). If the commercialsolver(s) 308 determine(s) that there are not additional node(s) atadditional height(s) (block 516: NO), the example process of FIG. 5ends, and control returns to a calling function or process such as theexample process of FIG. 4 .

FIG. 6 is an example flowchart 412 representative of example machinereadable instructions that may be executed by the example audiencepopulation determiner 114 of FIGS. 1 and/or 3 to solve for the variableLagrange multipliers (e.g., impression-based Lagrange multipliers δs)and the value corresponding to the panelist audience size not exposed tothe media (e.g., z₀ and/or λ₀) using the system of equationscorresponding to Equations 6-8 based on the kept Lagrange multipliers(e.g., λ₁=−1.0986, λ₂=0.6931, λ₃=0.5878, λ₄=1.3863, λ₅=−2.0149,λ₆=−1.1939, and λ₇=0.8109) and the population impression totals of themargins (e.g., IMP(A)=0.4, IMP(B)=0.6, IMP(C)=0.8, IMP(D)=1). Theexample instructions of FIG. 6 may be used to implement block 412 ofFIG. 4 . The example flowchart 412 is described in conjunction with theexample marginal and union data 200 of FIG. 2A. However, the exampleflowchart 412 may be implemented in conjunction with any panelist data,database proprietor data, margins, and/or unions.

At block 602, the example commercial solver(s) 308 set(s) up a system ofequations based on Equations 6-8 corresponding to removal of each nodeof the tree structure association. For example, the commercial solver(s)308 use(s) the panelist data where the first subset Lagrange multipliersare used for the equations corresponding to union removals and therelation between marginal panelist audience size and marginal panelistimpression counts (e.g., Equation 8). For example, the commercialsolver(s) 308 set(s) up a system of equations includingIMP(1)=(1+y₁)(AUD(1)), where AUD(1)=AUD(T)−AUD(T\1), IMP(1)=0.4, andAUD(T)=z₀z₇s₇ for the first node 1 (e.g., corresponding to margin A),IMP(2)=(1+y₂)(AUD(2)), where AUD(2)=AUD(T)−AUD(T\2), IMP(1)=0.6, andAUD(T)=z₀z₇s₇ for the first node 2 (e.g., corresponding to margin B),etc.

At block 604, the example commercial solver(s) 308 select(s) value(s)for the variable Lagrange multiplier(s) (e.g., Lagrange multipliers λ₀and δs) that satisfy the equations while using the first subset Lagrangemultiplier(s) (e.g., λ₁=−1.0986, λ₂=0.6931, λ₃=0.5878, λ₄=1.3863,λ₅=−2.0149, λ₆=−1.1939, and λ₇=0.8109). As described above, each of theselected equations corresponds to Equations 2 and 4, which includes avariable s and a variable s^((new)) that can be identified usingEquations 3 and 5, respectively. Because Equations 2-5 and 7 may includethe z₀ value and z₀=e^(λ0), the commercial solver(s) 308 can select avalue for the variable Lagrange multiplier (λ₀) that satisfies theselected equation(s). Additionally, because Equations 2-5 includesvalues that correspond to the y values y₀=e^(λ0), the commercialsolver(s) 308 can select a value for the Lagrange multipliers(impression-based Lagrange multipliers δs) that satisfies the selectedequation(s). Once the commercial solver(s) 308 select(s) the value(s) ofthe variable Lagrange multipliers, the example commercial solver(s) 308determine(s) if the selected value(s) satisfy(ies) the constraint(s) ofthe selected equation(s) (e.g., within a threshold amount of error)(block 606).

If the example commercial solver(s) 308 determine(s) that the selectedvalue(s) do(es) not satisfy(ies) the constraint(s) of the selectedequation(s) (block 606: NO), the commercial solver(s) 308 adjust(s) theselected value(s) of the variable Lagrange multipliers (block 608), andcontrol returns to block 606 until the selected value(s) do(es) satisfythe constraints (e.g., within the threshold amount of error). In thismanner, the example commercial solver(s) 308 perform(s) parallelcomputations with a processor to determine(s) the variable Lagrangemultipliers in an iterative fashion in parallel. If the examplecommercial solver(s) 308 determine(s) that the selected value(s) do(es)satisfy the constraint(s) of the selected equation(s) (block 606: YES),the commercial solver(s) 310 store the determined audiences (e.g.,AUD(1), AUD(2), etc.) based on the selected values when the selectedvalue(s) satisfy the during this step in the example local memory 306(block 610). In this manner, the flowchart of FIG. 7 can determine thereach(es) of the margins and/or unions with less computations, asfurther described below. After block 610, the example process of FIG. 6ends, and control returns to a calling function or process such as theexample process of FIG. 4 .

FIG. 7 is an example flowchart 414 representative of example machinereadable instructions that may be executed by the example audiencepopulation determiner 114 of FIGS. 1 and/or 3 to estimate the populationreach(es) for one or more of the margins (e.g., A, B, C, and/or D)and/or unions (e.g., AB, CD, and/or ABCD) based on the Lagrangemultipliers (e.g., the λ₀ and the δ{circumflex over ( )}s) determined atblocks 406 and 412 using the above Equation 6. The example instructionsof FIG. 7 may be used to implement block 414 of FIG. 4 . Theinstructions of the example flowchart 414 are described in conjunctionwith the example marginal and union data 200 of FIG. 2A. However, theexample flowchart 414 may be implemented in conjunction with anypanelist data, database proprietor data, margins, and/or unions.

At block 702, the example commercial solver(s) 308 determine(s) thetotal population audience percentage (e.g., AUD(T)). As described abovein conjunction with Equation 2, AUD(T)=z₀z_(N)s_(N), where z_(N)corresponds to the Lagrange multiplier solved at block 406 of FIG. 4 ,z₀ correspond to the Lagrange multipliers determined at block 412 ofFIG. 4 , and s_(N) can be solved using Equation 3. Accordingly, thecommercial solver(s) 308, using Equation 2, determine(s) that since N=7,s₁=y₁=1.5394 s₂=y₂=0.9627 s₃=y₃=0.6678 s₄=y₄=0.6068, s₅=(1+s₁{circumflexover (z)}₁)(1+s₂{circumflex over (z)}₂)−1=3.4266, ands₆=(1+s₃{circumflex over (z)}₃)(1+s₃{circumflex over (z)}₃)−1=6.5472.Accordingly, the example commercial solver(s) 308 determine(s) thats₇=(1+s₅{circumflex over (z)}₅)(1+s₆{circumflex over (z)}₆)−1=3.3473.Thus, the example commercial solver(s) 308 determine(s) thatAUD(T)=(0.1172)(2.25)(3.3473)=0.8828.

At block 704, the example commercial solver(s) 308 select(s) anavailable unknown population margin and/or union audience. For example,in the example of FIG. 2 , percentages corresponding to the margins A,B, C, and D, and the unions AB, CD, and ABCD are unknown for thedatabase proprietor impression data. For example, the example commercialsolver(s) 308 may select the AB (e.g., corresponding to node 5 of theexample tree structure 202 of FIG. 2 ). At block 706, the examplecommercial solver(s) 308 determine(s) the total population audiencepercentage if the selected population union were removed from the treestructure association (e.g., AUD(T\5)). For example, using the aboveEquation 4, the example commercial solver(s) 308 determine(s) thatAUD(T\5)=z₀z₇s₇ ^((new)). Because the z values are known (e.g., based onthe Lagrange multipliers from blocks 406 and 414), to solve forAUD(T/5), the commercial solver(s) 308 utilize(s) Equation 5 to solvefor s₇ ^((new)). For example, based on the tree structure associationand Equation 5,

$s_{7}^{({new})} = {\left( \frac{s_{7} + 1}{1 + {s_{5}z_{5}}} \right) - 1.}$Accordingly, the example commercial solver(s) 308 determine(s) that the

$s_{7}^{({new})} = {{\left( \frac{(3.3473) + 1}{1 + {(3.4266)(0.1333)}} \right) - 1} = {1.984.}}$Thus, the commercial solver(s) 308 determine(s) thatAUD(T\5)=(0.1172)(2.25)(1.984)=0.5232.

At block 708, the example commercial solver(s) 308 subtract(s) thedetermined total population audience with the removed population unionfrom the total population audience to determine the population unionaudience percentage (e.g., corresponding to Equation 1). For example,the commercial solver(s) 308 determine(s) the total deduplicatedpopulation audience percentage of union AB to be 0.3595 (e.g.,0.3595=0.8828−0.5232). At block 710, the example commercial solver(s)308 determine(s) the population reach across the selected union bymultiplying the population union audience percentage by the universeestimate based on what is being measured (e.g., Males with Internetaccess, people in Boston, etc.). The universe estimate is stored at theAME. For example, if the universe estimate is 1,000 people, then theexample commercial solver(s) 308 determine(s) the population reach forunion AB to be roughly 360 people. At block 712, the example commercialsolver(s) 308 determine(s) if there are additional unknown populationunion audiences to solve for. If the example commercial solvers) 308determine that there are additional population reach(es) for additionalunion(s) to solve for (block 712: YES), control returns to block 704 todetermine an additional population reach for an additional margin and/orunion. If the example commercial solvers) 308 determine(s) that thereare not additional population reach(es) for additional union(s) to solvefor (block 712: NO), the example process of FIG. 7 ends, and controlreturns to a calling function or process such as the example process ofFIG. 4 .

FIG. 8 is a block diagram of an example processor platform 800structured to execute the instructions of FIGS. 4-7 to implement thepopulation reach determiner 120 of FIG. 3 . The processor platform 800can be, for example, a server, a personal computer, a workstation, aself-learning machine (e.g., a neural network), a mobile device (e.g., acell phone, a smart phone, a tablet such as an iPad™), a personaldigital assistant (PDA), an Internet appliance, or any other type ofcomputing device.

The processor platform 800 of the illustrated example includes aprocessor 812. The processor 812 of the illustrated example is hardware.For example, the processor 812 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors, GPUs, DSPs, orcontrollers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor 812 implements the example data converter302, the example association controller 304, and the example commercialsolver(s) 308 of FIG. 3 .

The processor 812 of the illustrated example includes a local memory 813(e.g., a cache). In FIG. 8 , the example local memory 813 implements theexample local memory 306 and/or the example panelist impression storage301. The processor 812 of the illustrated example is in communicationwith a main memory including a volatile memory 814 and a non-volatilememory 816 via a bus 818. The volatile memory 814 may be implemented bySynchronous Dynamic Random Access Memory (SDRAM), Dynamic Random AccessMemory (DRAM), RAMBUS® Dynamic Random Access Memory (RDRAM®) and/or anyother type of random access memory device. The non-volatile memory 816may be implemented by flash memory and/or any other desired type ofmemory device. Access to the main memory 814, 816 is controlled by amemory controller.

The processor platform 800 of the illustrated example also includes aninterface circuit 820. The interface circuit 820 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), a Bluetooth® interface, a near fieldcommunication (NFC) interface, and/or a PCI express interface. In theexample of FIG. 8 , the interface 820 implements the exampleinterface(s) 300.

In the illustrated example, one or more input devices 822 are connectedto the interface circuit 820. The input device(s) 822 permit(s) a userto enter data and/or commands into the processor 812. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 824 are also connected to the interfacecircuit 820 of the illustrated example. The output devices 824 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay (LCD), a cathode ray tube display (CRT), an in-place switching(IPS) display, a touchscreen, etc.), a tactile output device, a printerand/or speaker. The interface circuit 820 of the illustrated example,thus, typically includes a graphics driver card, a graphics driver chipand/or a graphics driver processor.

The interface circuit 820 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem, a residential gateway, a wireless access point, and/or a networkinterface to facilitate exchange of data with external machines (e.g.,computing devices of any kind) via a network 826. The communication canbe via, for example, an Ethernet connection, a digital subscriber line(DSL) connection, a telephone line connection, a coaxial cable system, asatellite system, a line-of-site wireless system, a cellular telephonesystem, etc.

The processor platform 800 of the illustrated example also includes oneor more mass storage devices 828 for storing software and/or data.Examples of such mass storage devices 828 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, redundantarray of independent disks (RAID) systems, and digital versatile disk(DVD) drives.

Machine executable instructions 832 represented by FIGS. 4-7 may bestored in the mass storage device 828, in the volatile memory 814, inthe non-volatile memory 816, and/or on a removable non-transitorycomputer readable storage medium such as a CD or DVD.

From the foregoing, it should be appreciated that the above disclosedmethods, apparatus, and articles of manufacture estimate populationreach from marginal ratings. Examples disclosed herein determine thereach analytically using the above Equations 1-9. Traditional techniquesfor determining reach across various unions include determining thereach numerically. However, such traditional techniques are unsolvablefor a large number of marginals dues to memory and/or processingconstraints. Examples disclosed herein alleviate the problems associatedwith such traditional techniques by demining the reach analytically(e.g., via solving the disclosed Equations 2-9 using a population reachunion estimates) in a manner that facilitates parallel processing. Theparallel processing results in a faster more efficient calculation. Inthis manner, the estimations of reach can be determined in a faster,more efficient manner that requires less memory than traditionalnumerical techniques. Using examples disclosed herein, reach can bedetermined from a nearly infinite number of instances and/or unions ofmedia exposure based on the marginal media exposure data.

Although certain example methods, apparatus and articles of manufacturehave been described herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe appended claims either literally or under the doctrine ofequivalents.

What is claimed is:
 1. An apparatus to estimate a population reach ofmedia, the apparatus comprising: interface circuitry to obtain at leastone of (a) a panelist impression count corresponding to a plurality ofdevices or (b) a database proprietor impression count from a databaseproprietor via network communications; memory to store the panelistimpression count and the database proprietor impression count; computerreadable instructions; and programmable circuitry to be programmed bythe computer readable instructions to: access the panelist impressioncount from the memory; determine first multipliers corresponding to thepanelist impression count and panelist audience size totals of at leastone of a first margin of the media, a second margin of the media, or aunion of the first margin and the second margin, the first margin, thesecond margin, and the union included in a tree association;concurrently determine second multipliers using the tree association andthe first multipliers; determine third multipliers corresponding to atotal audience size exposed to the media at at least one of the firstmargin, the second margin, or the union based on the tree associationusing database proprietor impression totals; and determine, based on thethird multipliers, an estimate for the population reach of the media forat least one of the first margin, the second margin, or the union. 2.The apparatus of claim 1, wherein the interface circuitry is to output areport corresponding to the estimate for the population reach of themedia.
 3. The apparatus of claim 1, wherein the programmable circuitryis to generate the tree association by: tagging the first margin with afirst identifier, the second margin with a second identifier, and athird margin with a third identifier; and tagging the first margin, thesecond margin, and the union with at least one of correspondingdescendant node identifiers or corresponding ancestor node identifiers.4. The apparatus of claim 1, wherein the programmable circuitry is toconcurrently determine the second multipliers by concurrently solving afirst equation corresponding to the first margin, a second equationcorresponding to the second margin, and a third equation correspondingto the union.
 5. The apparatus of claim 4, wherein the programmablecircuitry is to solve for a third multiplier of the first equation and afourth multiplier of the second equation in parallel.
 6. The apparatusof claim 1, wherein the programmable circuitry is to determine the firstmultipliers iteratively.
 7. The apparatus of claim 1, wherein the unionis a first union, the tree association corresponding to a second unionof third and fourth margins the total audience size of the mediacorresponding to a third union of the first and second unions.
 8. Theapparatus of claim 7, wherein the programmable circuitry is to determinethe estimate of the population reach of the first union based on adifference between a first percentage of the total audience size and asecond percentage of the total audience size if the first union isremoved from the tree association.
 9. The apparatus of claim 1, whereinthe programmable circuitry is to discard the first multipliers prior todetermining the third multipliers.
 10. A non-transitory computerreadable medium comprising instructions which, when executed, cause oneor more processors to at least: obtain at least one of (a) a panelistimpression count corresponding to a plurality of devices or (b) adatabase proprietor impression count from a database proprietor vianetwork communications; determine first multipliers corresponding to thepanelist impression count and panelist audience size totals of at leastone of a first margin of media, a second margin of the media, or a unionof the first margin and the second margin, the first margin, the secondmargin, and the union included in a tree association; concurrentlydetermine second multipliers using the tree association and the firstmultipliers; determine third multipliers corresponding to a totalaudience size exposed to the media at at least one of the first margin,the second margin, or the union based on the tree association usingdatabase proprietor impression totals; and determine, based on the thirdmultipliers, an estimate for a population reach of the media for atleast one of the first margin, the second margin, or the union.
 11. Thecomputer readable medium of claim 10, wherein the instructions are tocause the one or more processors to output a report corresponding to theestimate for the population reach of the media.
 12. The computerreadable medium of claim 10, wherein the instructions are to cause theone or more processors to generate the tree association by: tagging thefirst margin with a first identifier, the second margin with a secondidentifier, and a third margin with a third identifier; and tagging thefirst margin, the second margin, and the union with at least one ofcorresponding descendant node identifiers or corresponding ancestor nodeidentifiers.
 13. The computer readable medium of claim 10, wherein theinstructions are to cause the one or more processors to concurrentlydetermine the second multipliers by concurrently solving a firstequation corresponding to the first margin, a second equationcorresponding to the second margin, and a third equation correspondingto the union.
 14. The computer readable medium claim 13, wherein theinstructions are to cause the one or more processors to solve for athird multiplier of the first equation and a fourth multiplier of thesecond equation in parallel.
 15. The computer readable medium claim 10,wherein the instructions are to cause the one or more processors todetermine the first multipliers iteratively.
 16. The computer readablemedium of claim 10, wherein the union is a first union, the treeassociation corresponding to a second union of third and fourth marginsthe total audience size of the media corresponding to a third union ofthe first and second unions.
 17. The computer readable medium of claim16, wherein the instructions are to cause the one or more processors todetermine the estimate of the population reach of the first union basedon a difference between a first percentage of the total audience sizeand a second percentage of the total audience size if the first union isremoved from the tree association.
 18. The computer readable medium ofclaim 10, wherein the instructions are to cause the one or moreprocessors to discard the first multipliers prior to determining thethird multipliers.
 19. A method to estimate a population reach of media,the method comprising: obtaining at least one of (a) a panelistimpression count corresponding to a plurality of devices or (b) adatabase proprietor impression count from a database proprietor vianetwork communications; storing the panelist impression count and thedatabase proprietor impression count in memory; accessing the panelistimpression count from the memory; determining, by executing aninstruction with one or more processors, first multipliers correspondingto the panelist impression count and panelist audience size totals of atleast one of a first margin of the media, a second margin of the media,or a union of the first margin and the second margin, the first margin,the second margin, and the union included in a tree association;concurrently determining, by executing an instruction with the one ormore processors, second multipliers using the tree association and thefirst multipliers; determining, by executing an instruction with the oneor more processors, third multipliers corresponding to a total audiencesize exposed to the media at at least one of the first margin, thesecond margin, or the union based on the tree association using databaseproprietor impression totals; and determining, by executing aninstruction with the one or more processors, an estimate for thepopulation reach of the media for at least one of the first margin, thesecond margin, or the union based on the third multipliers.
 20. Themethod of claim 19, further including outputting a report correspondingto the estimate for the population reach of the media.